This invention generally relates to encoding and decoding content, and more specifically to adaptively encoding and decoding content based on characteristic objects in the content.
Various online systems transmit information to and from one another over a network. The information may be, for example, content such as an image or video, or a string of text such as an e-mail or word document. Typically, the sender encodes the information into a compressed code such that the compressed code can be efficiently transmitted to the receiver. The receiver can then decode the compressed code to reconstruct the original information. For example, responsive to a request to download a particular image from a client device, an image sharing website may encode the image and transmit the compressed code to the client device. The sender may also compress the information into different levels according to the available bandwidth at the sender or receiver.
Often times, it is advantageous for certain portions of content to be encoded with a different degree of information over others. For example, these portions may be allocated a greater number of bits in the compressed code and are reconstructed at the receiver at a higher quality than the remaining portions of the content. The image sharing website may desire to preferentially encode regions of an image associated with human faces over those associated with the background, since viewers tend to focus greater attention on the human faces. However, it is often difficult to adaptively encode such regions-of-interest with good accuracy and computational efficiency.